#include <vector>
#include <utility>
#include <functional>
#include <list>
#include <iostream>

#ifndef JUEGO_H
#define	JUEGO_H


using namespace std;

class Juego {

public:
    vector<int> numeros;
    vector<int> puntos;
    list< pair<int,int> > moves;
    int actual;
    int turno;
    int turnoCount;
    
    Juego(void);
    Juego(vector<int>*);
    Juego(const Juego*);
    Juego& operator=(Juego&);
    int sum(int,int);
    void extraer(int );
    string generateKey(void);
    void swapScores(void);
    void addPuntos(int);
    void cambiarJugadorActual(void);
    void cambiarJugadorActual(int);
    int getPuntos(void);
    int getPuntosOtro(void);
    void pasarTurno(void);
    bool finalizo(void);
    void pushMove(int,int);
    int start;
    int end;
    friend ostream& operator<<(ostream& stdout, Juego& j);
    
    private:

};

#endif	/* JUEGO_H */